Disk storage system

ABSTRACT

A disk storage system containing a storage device having a record medium for holding the data, a plurality of storage sub-systems having a controller for controlling the storage device, a first interface node coupled to a computer using the data stored in the plurality of storage sub-systems, a plurality of second interface nodes connected to any or one of the storage sub-systems, a switching means connecting to a first interface node and a plurality of second interface nodes to perform frame transfer between a first interface node and a plurality of second interface nodes based on node address information added to the frame. The first interface node has a configuration table to store structural information for the memory storage system and in response to the frame sent from the computer, analyzes the applicable frame, converts information relating to the transfer destination of that frame based on structural information held in the configuration table, and transfers that frame to the switching means.

BACKGROUND OF THE INVENTION

[0001] This invention relates to a disk control system for controlling aplurality of disk devices and relates in particular to a method forimproving the high speed operation of the disk control system, achievinga lower cost and improving the cost performance.

[0002] A diskarray system for controlling a plurality of disk devices isutilized as a storage system in computers. A diskarray system is forinstance disclosed in “A Case for Redundant Arrays of Inexpensive Disks(RAID)”; In Proc. ACM SIGMOD, June 1988 (Issued by Cal. State Univ.Berkeley). This diskarray operates a plurality of disk systems inparallel and is a technique that achieves high speed operation comparedto storage systems utilizing disks as single devices.

[0003] A method using the fabric of a fiber channel is a technique formutually connecting a plurality of hosts with a plurality of diskarraysystems. A computer system using this technique is disclosed forinstance in “Serial SCSI Finally Arrives on the market” of NikkeiElectronics, P. 79, Jul. 3, 1995 (No. 639) as shown in FIG. 3. In thecomputer system disclosed here, a plurality of host computers (hereaftersimply called hosts) and a plurality of diskarray systems arerespectively connected to a fabric device by way of fiber channels. Thefabric device is a switch for the fiber channels and performs transferpath connections between the desired devices. The fabric device istransparent to (or passes) “frame” transfers which are packets on thefiber channel. The host and diskarray system communicate between twopoints without recognizing he fabric device.

SUMMARY OF THE INVENTION

[0004] In diskarray systems of the conventional art, when the number ofdisk devices were increased in order to increase the storage capacityand achieving a controller having high performance matching the numberof disk units was attempted, the internal controller buses were found tohave only limited performance and likewise, the processor performingtransfer control was also found to have only limited performance. Inorder to deal with these problems, the internal buses were expanded andthe number of processors was increased. However, attempting to solve theproblem in this manner made the controller structure more complex due tothe control required for a greater number of buses and caused increasedoverhead and complicated software control due to non-exclusive controlof data shared between processors, etc. The rise in cost consequentlybecame extremely high and performance reached its limits so that costperformance was unsatisfactory. Though the cost for this kind could bejustified in terms of performance in a large scale system, in systemsnot or such a large scale the cost did not match performance,expandability was limited and the development period and developmentcosts increased

[0005] The overall system storage capacity and performance can beincreased by connecting a plurality of diskarray systems in parallelwith a fabric device. However, in this method, there is absolutely noconnection between the diskarray systems, and access concentrated on aparticular diskarray system cannot be distributed among the otherdevices so that high performance cannot be achieved in actual operation.Also, the capacity of a logical disk device (hereafter logic unit) asseen from the host is limited to the capacity of one diskarray system sothat a high capacity logic unit cannot be achieved.

[0006] In an attempt to improve diskarray system reliability, adiskarray system can be comprised of a mirror structure where, in twodiskarray systems, the host unit has a mirroring function. However, thismethod requires overhead due to control required of the mirroring by thehost and also has the problem that performance is limited. This methodalso increases the load that the system administrator must supervisesince many diskarray systems are present inside the system. Themaintenance costs thus increase since a large number of maintenancepersonnel must be hired and maintenance fees must be paid for each unit.The plurality of diskarray systems and fabric devices are further allautonomous devices so that the settings must be made by differentmethods according to the respective device, creating the problem thatoperating costs increase along with a large increase in operating timeand system administrator training time, etc.

[0007] In order to resolve these problems with the related art, thisinvention has the object of providing a disk storage system capable ofbeing structured according to the scale and requirements of the computersystem, and a disk storage system that responds easily to needs for highreliability and future expansion.

[0008] The disk storage system of this invention contains a storagedevice having a record medium for holding the data, a plurality ofstorage sub-systems having a controller for controlling the storagedevice, a first interface node coupled to a computer using the datastored in the plurality of storage sub-systems, a plurality of secondinterface nodes connected to any or one of the storage sub-systems, aswitching means connecting between a first interface node and aplurality of second interface nodes to perform frame transfer between afirst interface node and a plurality of second interface nodes based onnode address information added to the frame.

[0009] The first interface node preferably has a configuration table tostore structural information for the memory storage system and aprocessing unit to analyze the applicable frame in response to the framesent from the computer, converts information relating to the transferdestination of that frame based on structural information held in theconfiguration table, and transfers that frame to the switching means.Further, when transmitting a frame, the first interface node adds thenode address information about the node that must receive the frame, tothat frame. A second interface node then removes the node addressinformation from the frame that was received, recreates the frame andtransfers that frame to the desired storage sub-system.

[0010] In the embodiment of this invention, the disk storage system hasa managing processor connecting to the switching means. The managingprocessor sets the structural information in the configuration table ofeach node according to the operator's instructions. Information forlimiting access from the computer is contained in the. structuralinformation.

[0011] In another embodiment of this invention, the first interface nodereplies to the command frame sent from the computer instructing thewriting of data, makes copies of that command frame and the followingdata frames, adds different nodes address information to each frame sothe received frame and the copied command frames will be sent to thedifferent respective nodes and sends these frames to the switchingmeans.

BRIEF DESCRIPTION OF THE DRAWINGS

[0012]FIG. 1 is a block diagram showing the structure of the computersystem of the first embodiment of this invention.

[0013]FIG. 2 is block diagram of the diskarray subset of the firstembodiment.

[0014]FIG. 3 is block diagram of diskarray switch of the firstembodiment.

[0015]FIG. 4 is a block diagram of the crossbar switch of the diskarrayswitch of the first embodiment.

[0016]FIG. 5 is block diagram of the host I/F node for he diskarrayswitch of the first embodiment.

[0017]FIG. 6A is sample diskarray system configuration table

[0018]FIG. 6B is sample diskarray system configuration table.

[0019]FIG. 7 is a block diagram of the frame of the fiber channel.

[0020]FIG. 8 is a block diagram of the frame header of the fiberchannel.

[0021]FIG. 9 is a block diagram of the frame payload of the fiberchannel.

[0022]FIG. 10 is a model view showing the sequence of frames sent by wayof the fiber channel during read operation from the host

[0023]FIG. 11 is a model view showing the interactive relationship ofthe host-LU, the LU for each diskarray subset, as well as each diskarrayunit.

[0024]FIG. 12 is a block diagram of the S packet.

[0025]FIG. 13A through 13C are flowcharts of the processing in the hostI/F node during write processing.

[0026]FIG. 14 is a block diagram showing a plurality of diskarrayswitches in a cluster-connected diskarray system.

[0027]FIG. 15 is a block diagram of the computer system of the secondembodiment of this invention.

[0028]FIG. 16 is a block diagram of the diskarray switch IC of thefourth embodiment of this invention

[0029]FIG. 17 is a block diagram of the computer system of the fifthembodiment of this invention.

[0030]FIG. 18 is a screen configuration view showing a typical displayof the logic connection structure.

[0031]FIG. 19 is a model diagram showing the frame sequence in the sixthembodiment of this invention.

[0032]FIGS. 20A through 20D are flowcharts showing the processing on thehost I/F node during the mirroring write processing in the sixthembodiment of this invention.

[0033]FIG. 21 is an address spatial diagram of the diskarray system forthe seventh embodiment of this invention.

[0034]FIG. 22 is a flowchart showing the processing in the host I/F nodeof the seventh embodiment of this invention.

[0035]FIG. 23 is a block diagram of the disaster recovery system of theeight embodiment of this invention

[0036]FIG. 24 is a descriptive view of the alternative path setup.

DECRTPTTON OF PREFERRED EMBODIMENTS

[0037] (First Embodiment)

[0038]FIG. 1 is a block diagram showing the structure of the computersystem of the first embodiment of this invention. In the figure,reference numeral 1 denotes a diskarray system, and 30 is the (host)computer connected to the diskarray system. The diskarray system 1contains a diskarray subset 10, a diskarray switch 20 and a diskarraysystem configuration manager 70 for handling the configuration of theoverall diskarray system. The diskarray system 1 further has acommunication interface (communication ITF) 80 between the diskarrayswitch 20 and the diskarray system configuration manager 70, and alsobetween the diskarray subset 10 and the diskarray system configurationmanager 70. A host30 and the diskarray system 1 are connected by a hostinterface (host IF)) 31. The host I/F 31 is connected to the diskarrayswitches 20 of the diskarray system 1. The diskarray switch 20 and thediskarray subset 10 inside the diskarray system 1 are connected by thediskarray interface (diskarray I/F 21).

[0039] The hosts 30 and the diskarray subsets 10 are shown as four unitseach however this number is optional and is not limited. The hosts 30and the diskarray subsets 10 may also be provided in different numbersof units. The diskarray switches 20 in this embodiment are duplexed asshown in the drawing. Each host30 and each diskarray subset 10 areconnected to both of the duplexed diskarray switches 20 by therespective host I/F31 and a diskarray I/F21. Thus even if one of thediskarray switches 20, the host I/F 31 or the diskarray I/F21 is broken,the other diskarray switches 20, the host I/F 31 or the diskarray I/F21can be utilized to allow access from the host 30 to the diskarray system1, and a high amount of usage can be achieved. However, this kind ofduplication or duplexing is not always necessary and is selectableaccording to the level of reliability required by the system.

[0040]FIG. 2 is block diagram of a diskarray subset 10 of the firstembodiment. The reference numeral 101 denotes the host adapter forinterpreting the commands from the host system (host 10), executing thecache hit-miss decision and controlling the data transfer between thehost system and the cache. The reference numeral 102 denotes the cachememory/shared memory that comprises the cache memory for performing highspeed disk data access and a shared memory for storing data shared bythe host adapters 101 and the lower adapters 103. The reference numeral104 denotes a plurality of disk units stored inside the diskarray subset10. Reference numeral 103 is the lower adapter for controlling a diskunit 104 and controlling the transfer of data between the disk unit 104and the caches. Reference numeral 106 is the diskarray subsetconfiguration manager to perform communications between the diskarraysystem configuration manager 70 and the overall diskarray system 1, andalso manage the structural parameter settings and reporting of troubleinformation, etc. The host adapter 101, the cache memory/shared memory102, and the lower adapter 103 are respectively duplexed here. Thereason for duplexing is to attain a high degree of utilization, just thesame as with the diskarray switch 20 and is not always required. Eachdisk unit 104 is also controllable from any of the duplexed loweradapters 103. In this embodiment, the cache and shared memories jointlyutilize the same memory means in view of the need of low costs howeverthe caches and shared memories can of course be isolated from eachother.

[0041] The host adapter 101 comprises an host MPU1010 as execute controlof the adapter 101, an host system or in other words a diskarray I/Fcontroller 1011 to control the diskarray switches 20 and the connectingI/F which is the diskarray I/F21, and an host bus 1012 to perform sircommunications and data transfer between the cache memory/shared memory102 and host MPU1010 and the diskarray I/F controller 1011. The figureshows one diskarray I/F controller 1011 for each host adapter 101however a plurality of diskarray I/F controllers 1011 can also beprovided for each one host adapter.

[0042] The lower adapter 103 contains a lower MPU103 to execute controlof the lower adapter 103, a disk I/F controller 1031 to control the disk104 and interface which is the disk I/F, and a lower bus 1032 to performcommunications and data transfer between the cache memory/shared memory102 and host MPU1030 and the diskarray I/P controller 1031. The figureshows four diskarray I/F controllers 1031 for each lower adapter 103however the number of diskarray I/F controllers is optional and can bechanged according to the diskarray configuration and the number of disksthat are connected. FIG. 3 is block diagram of the diskarray switch 20of the first embodiment. The diskarray switch 20 contains a ManagingProcessor (MP) which is a processor for performing management andcontrol of the entire diskarray switch, a crossbar switch 201 forcomprising n×n mutual switch paths, a diskarray I/F node 202 formed foreach diskarray I/F21, a host I/F node 203 formed for each host I/F 31,and a communication controller 204 for performing communications withthe diskarray system configuration manager 70. The reference numeral2020 denotes a path for connecting the diskarray I/F node 202 with thecrossbar switch 201, a path 2030 connects the host I/F node 203 and thecrossbar switch 201, a path 2040 connects with the other diskarrayswitch 20 and other IF for forming clusters, a path 2050 connects theMP200 with a crossbar switch 201

[0043]FIG. 4 is a block diagram showing the structure of the crossbarswitch 201. A port 2010 is a switching part (SWP) for connecting thepaths 2020, 2030, 2050 and cluster I/F 2040 to the crossbar switch 201.The switching ports 2010 all have the same structure and performswitching control of the transfer paths to other SWP from a particularSWP The figure shows on SWP however identical transfer paths existbetween all the SWP.

[0044]FIG. 5 is a block diagram showing the structure of the host I/Fnode 203. In this embodiment, use of a fiber channel is assumed for boththe diskarray I/F21 and the host I/F31 in order to provide a specificdescription. The host I/F31 and the I/F21 car. of course be implementedwith interfaces other than fiber channels. By utilizing an identicalinterface, the host I/F node 203 and the diskarray I/F node 202 can bothhave the same structure. In this embodiment, the diskarray I/F node 202has the same structure as the host I/F node 203 as shown in the figure.Hereafter, the host I/IF node 203 will be described by using an example.A Searching Processor (SP) searches for what frame to connect the fiberchannel frame (hereafter simply called frame) to, an InterfaceController (IC) 2023 transmits and receives the frames with the host 30(the diskarray subset 10 when using the diskarray I/P node 202), aSwitching Controller (SC) 2022 performs conversion based on resultsfound by the SP2021 for frames received by the TC2023, a SwitchingPacket Generator (SPG) 2024 packetizes the frame converted by the SC2021into a configuracion that can pass the crossbar switch 201 to transferto other nodes, a Frame Buffer (FE) 2025 temporarily stores the receivedframe, an Exchange Table (ET) 2026 supervises use of exchange numbersfor identifying a plurality of frame strings corresponding to a diskaccess request command (hereafter simply called command) from one host,and a Diskarray Configuration Table (DCT) 2027 stores structuralinformation for a plurality of diskarray subsets 10.

[0045] Each structural section of the diskarray switch 20 are preferablyall comprised of hardware logic from the viewpoint of performance.However, program control utilizing general purpose processors isallowable for the SP2021 and the SC2022 functions if the specifiedperformance can be achieved.

[0046] Each diskarray subset 10 has disk units 104 as one or a pluralityof logical disk units. These logical disk units are referred to asLogical Units (LU) The LU need not correspond in a ratio of one to one,to the logical disk units 104 and one disk unit 104 can be comprised ofa plurality of LU or one LU can comprise a plurality of disk units 104One LU is recognized as one disk device as seen externally of thediskarray unit 10. In this embodiment, a logical LU is comprised furtherby a diskarray switch 20 and the host 30 functions to access this LU. Inthese specifications, when one LU is recognized as one LU by the host30, then the LU is called independent LU (ILU) and when a plurality ofLUs are recognized as one LU by the host 30, then the one LU recognizedby the host 30 is called combined LU (CLU).

[0047]FIG. 11 shows the address spatial relation for each level when onecombined LU (CLU) is comprised of four LUs of four diskarray subsets. Inthe figure, the numeral 1000 indicates an LU address space for onecombined LU (CLU) of the diskarray system 1 as seen from the host “#2”,the numeral 1100 is an LU address space for the diskarray subset 10, thenumeral 1200 indicates an address space for the disk unit 104 (Here,shown only for the diskarray subset #0.) The LU for each diskarraysubset 10 is comprised as a RAID 5 (Redundant Arrays of InexpensiveDisks Level 5) type diskarray, by four disk units 104. Each diskarraysubset 10 has an LU with respective capacities of n0, n1, n2, n3. Eachdiskarray switch 20 combines the address spaces held by these four LU toobtain a combined capacity (n0+n1+n2+n3) and achieve a combined LU (orCLU) recognized from the host 30.

[0048] In this embodiment, when for instance the host #2 is accessingthe region A1001, an access request is made specifying the region A1001,and this access request is converted by the diskarray switch 20 into arequest for accessing the region A′ 1101 of the LU of the diskarraysubset #0 and this request then sent to the diskarray subset #0. Thisdiskarray subset #0 then performs access and mapping of the region A′1101 onto of the region A″ 1201 on the disk unit 104. The mappingbetween the address space 1000 and the address space 1100 ES based onstructural information held in the DCT207 in the diskarray switch 20.The details of this processing are related later on. The mappingperformed in the diskarray subset is a technical method already wellknown in the prior art so a detailed explanation is omitted here.

[0049] In this embodiment, the DCT207 contains a Diskarray SystemConfiguration Table and Diskarray Subset Configuration Tables. Thestructure of the Diskarray System Configuration Table is shown in FIG.6A and the structure of the Diskarray Subset Configuration Tables areshown in FIG. 6B.

[0050] As shown in FIG. 6A, the Diskarray System Configuration Table20270 has a Host-LU Configuration Table 20271 holding informationshowing the structure of the host-LU, and a Diskarray I/F NodeConfiguration Table 20272 showing the related connections of thediskarray subset 10 and the diskarray IIF node 202 of the diskarrayswitch 20.

[0051] The Host-LU Configuration Table 20271 has LU information (LUInfo.) relating to the condition and Host LU of the diskarray subset 10LU, which is information showing the LU type, CLU class, CLU stripe sizeand Host-LU indicating the affiliation of the LU and the Host-LU No.which is a number for identifying that LU. The LU Type in the table isinformation on the LU type showing that the Host-LU is a CLU or one LU.The CLU class is information showing the class is any one of “Joined”,“Mirrored” or “Striped” when the LU type of this Host-LU is shown to bea CLU. Here, “Joined indicates as shown in FIG. 11 the CLU is one largememory space consisting of a group of LU connected together. As relatedlater in the sixth embodiment, “Mirrored” indicated two LU achieved by aduplexed LU. As related later on in the seventh embodiment, “Striped”indicates an LU stored with data distributed into a plurality of theseLU. When the CLU Stripe Size is shown by ‘Striped’ for the CLU class,then the striping size (A block size showing the units the data isdistributed in.) is indicated. The status shown in the Condition box isone of four types consisting of “Normal”, “Warning”, Fault and “NotDefined”. Of these types, “Normal” indicates the Host-LU status iscorrect “Warningl” indicates contraction is being performed for reasonssuch as problems occurring in a disk unit corresponding to an LUcomprising this Host-LU. “Fault” indicates that this Host-LU cannot beoperated due to a problem in the diskarray subset 10. The “Not Defined”type indicates the Host-LU is not defined for the corresponding Host-LUNo. The LU Info contains information specifying the diskarray subset 10affiliated with that LU, the LUN inside the diskarray subset, as well asinformation showing the size for LU that comprise this Host-LU. When theHost-LU is an ILU, then information for the sole LU is registered. Whenthe Host-LU is a CLU, then information relating to all the respective LUcomprising that CLU are registered. In the figure for instance, aHost-LU with a Host-LU No. of “0” is a CLU comprised from four LU thatare LUN “0” of the diskarray subset “#0”, LUN “0” of the diskarraysubset “#1”, LUN “0” of the diskarray subset “#2”, and LUN “0” of thediskarray subset “#3”. As can be seen in the table, this CLU is in the“Joined” CLU class.

[0052] The diskarray I/F node configuration table 20272 containsinformation on what diskarray I/F node 202 of diskarray switch 20 isconnected to each port of the diskarray subset 10 connected to thediskarray I/F 21. More specifically, this table holds the Subset NO.specifying the diskarray subset 10, the Subset Port No. specifying theport, the Switch No specifying the diskarray switch 20 connected to thatport, and an I/P Node No., specifying the diskarray I/F node 202 of thediskarray switch 20. When the diskarray subset 10 has a plurality ofports, information is set for each of those ports.

[0053] As shown in FIG. 6B the diskarray subset configuration table hasa plurality of tables 202720 through 202723 corresponding to each of thediskarray subsets 10. These tables include the RAID Group ConfigurationTable 202730 holding information showing the structure of the RAID Groupinside the diskarray subset 10, and the LU Configuration Table 202740holding information showing the structure of the LU inside the diskarraysubset 10,

[0054] The RAID Group Configuration Table 202730 has a Group No. showingthe number added to the RAID Group, a level showing the RAID Level ofthat RAID Group, and Disks Pith information showing the number of diskcomprising that RAID Group. When that RAID Group is comprised ofstriping such as for RAID Level 0, 5, then information showing thatStripe Size is included. As shown for instance, in the figure in thetable, a RAID Group “0” is a RAID Group comprised of four disk units.The RAID Level is 5 and the Stripe Size is 50.

[0055] The LU Configuration Table 202740 has an LTU No. showing thenumber (LUN) added to the LU, a RATD Group showing how that LU isconfigured in the RAID Group, a Condition showing the status of the LU,a Size showing the size (Capacity) of that LU, a Port showing what portsof the diskarray subset 10 are capable of providing access, and also anAlt. Port showing port that can be used as alternates for that Port No.The status showing the condition are of four types just as with theHost-LU and comprise “Normal”, “Warning” “Fault” and “Not Defined”. Theport specified by information set in the Alt. Port is utilized when aproblem occurs in the port specified with information set in the Port(item) however can also be used just for accessing the same LU from aplurality of ports.

[0056]FIG. 7 is a diagram of the frame for the fiber channel. A frame 40of the fiber channel has an SOF (Start Of Frame) showing the beginningportion of the frame, a frame header 401, a frame payload 402 which is asegment storing data for transfer, a CRC (Cyclic Redundancy Check) 403which is a 32 bit error detection code, and a EOF (End Of Frame) showingthe end of the frame. The frame header 401 has the structure shown inFIG. 8. The ID of the frame transfer originator (S_ID), the ID for theframe transfer destination (D_ID), Exchange IDs respectively specifiedby the Exchange <s Originator and the Exchange Responder (OX_ID, RX_ID),and the Sequence ID for specifying the frame group within the exchange(SEQ_ID) are all stored in the frame header 401. In this embodiment, theID assigned as S_ID to the host 30 in the frame issued from the host 30are also used as the ID assigned to the port of the diskarray switch 20as the D_ID. One pair of Exchange ID (OX_ID, RX_ID) are assigned For onehost command. When a plurality of data frames must be issued-for thesame Exchange, then an identical SEQ_ID is assigned to all of these dataframes, and each one is identified as Sequence Count (SEQCNT). The FramePayload 402 has a maximum length of 2110 byte and the contents stored ineach type frame are different. In the case for instance of FCP_CMD framerelated later on, the Logical Unit Number (LUN) of the SCSI and theCommand Description Block (CDB) are stored as shown in FIG. 9. The CDBcontains the command bytes required to access the disk (diskarray), thetransfer start logic address (LBA) and the transfer length (LEN).

[0057] The operation of the disk address system of this embodiment isdescribed next.

[0058] In order to use the diskarray system, the setting of structuralinformation of the diskarray subset 10 must be made for the diskarrayswitch 20. The system administrator can acquired structural setupinformation for the diskarray switch 20 and the diskarray subset 10 froma management console 5 by way of the diskarray configuration manager 70.The administrator can make different kinds of required entries of setupinformation such as logic unit structural setup for the desired systemstructure, RAID level settings, alternative path settings for use whentrouble occurs. The diskarray configuration manager (means) 70 canreceive that setting information, and transfer that setting informationto the each diskarray subset 10 and diskarray switch 20. The entry ofsetup information on the management console 5 is described separately inthe fifth embodiment.

[0059] In the diskarray switch 20, the communications controller 204acquires she setup information and sets he structural information suchas the address space information for each of the diskarray subsets 10 bymeans of the MP200. The MP200 distributes the structural information ofhe diskarray subset 10 to the each of the host I/F nodes 203 and thediskarray I/F nodes 202 by flay of the crossbar switch 201. When thenodes 202 and 103 receive this information, the SP2021 stored thisstructural information in the DCT2027. In the diskarray subset 10, thediskarray subset configuration manager (means) 106 acquires the setupinformation and stores it in the shared memory 102. The host MPU1010 andthe lower MPU 1030 refer to this setup information in the shared memory102 and perform configuration management.

[0060] The operation when the read command is issued is described nextfor the diskarray system 1 with a host “#2”. FIG. 10 is a model viewshowing the sequence of frames sent by way of the fiber channel duringread operation from the host FIG. 13A through 13C are flowcharts of theprocessing in the host I/F node 203 during write processing In thefollowing description, it is assumed the host “#2” is accessing thestorage area A1001 in FIG. 11. The act al storage area A” correspondingto the storage area A1001 is present in the address space of the diskunit #2 comprising the LU for LUN=0 of the diskarray subset “#1”. In thedefinition of the LU comprising the address space 1000, in theConfiguration Table 20271, the LU Type is defined as “CLU” and the CLUClass is defined as “Joined”.

[0061] During reading of data, the host 30 issues a command frame“FCP_CMD” stored with the read command, to the diskarray switch 20(arrow (a) in FIG. 10) The host I/F node “#2” of the diskarray switch 20receives the command frame “FCPCMD” (step 20001) by way of the host I/F31 from the IC2023. The IC2023 transfers the command frame to the SC2022The SC2022 temporarily stores the received command frame in the FrameBuffer (FB) 2025. At that time, the SC2022 calculates the CRC of thecommand frame and inspect the received information to determine if it iscorrect. If an error is found in the CRC inspection, the SC2022 reportsthe error to the IC2023. When the IC2023 the error report from theSC2022, a report of the CRC error is made to the host 30 by way of thehost I/F31 (step 20002).

[0062] When the CRC inspection shows that the information is correct,the SC2022 reads the frame held in the FB202, recognizes this frame asthe command frame, and analyzes the Frame Header 401 (step 20003). TheSC2022 then instructs the SP2021 and registers the Exchange informationsuch as S_ID, D_ID, OX_ID in the ET2026 (step 20004). Next, the SC2022analyzes the frame payload 402 and acquires the LUN and CDB specified bythe host 30 (step 20005). The SC2021 searches the DCT2020 a, theinstruction of the SC2022 and acquires the structural information of thediskarray subset 10. More specifically, the SC2021 searches the host-LUconfiguration table 20271 and finds information having a host-LU no.matching the LUN stored in the frame payload 402 that was received. TheSC2021 recognizes the structure of the Host-LU from the information setin the LU Type, and CLU class, and based on the information held in theLU Ino., identifies the disk subset 10 that must be accessed and its LUNin the LU as well as the LBA in the LU Next, the SC2021 refers to the LUconfiguration table 202740 of the Diskarray Subset Configuration Table202720 and confirms the connection port for the destination diskarraysubset 10, and acquires from the Diskarray I/F Node Configuration Table20272, the node No. of the diskarray I/F node 202 connected to thatport. The SC2021 in this way acquires the conversion information such asthe No. LUN, LBA for recognizing the diskarray subset 10 and reportsthis information to the SC2022 (step 20006). Next, using the acquiredconversion information, the SC2022 converts the LBA from the LUN and CDBof the frame payload 402. Also, the D_ID of the frame header 401 isconverted to the D_ID of the host I/F controller 1011 of the diskarraysubset 10. The S_ID is not rewritten at this point (step 20007). TheSC2022 transfers the converted command frame and the diskarray I/F nodeo. connected to the corresponding diskarray subset 10, to the SPG2024.The SPG2024 generates a packet added with a simple expansion header 601such as shown in FIG. 12 for the converted command that was received.This packet is called the Switching Packet (S Packet) 60. The expansionheader 601 of this S Packet 60 contains an added transfer originator(white node) No., a transfer responder node No. and a transfer length.The SPG2024 send the generated S Packet 60 to the crossbar switch 201(step 20008).

[0063] The crossbar switch 201 receives the S Packet 60 from the SWP2010connected to the host T/F node “#2”. The SWP2010 refers to the expansionheader 601 of the S Packet 6C, establishes a path for carrying outswitch control for the SWP connecting with the transfer responder node,and transfers the S Packet 60 to the transfer responder of the diskarrayI/F node 202 (Here, the diskarray I/F node “#0”). The SWP2010establishes a path whenever the S Packet 60 is received and releasesthat path when transfer of the S Packet 60 is finished. In the diskarrayI/F node “#0”, the SPG2024 receives the S Packet 60, removes theexpansion header 601 and delivers the command frame portion to theSC2022. The SC2022 writes its own ID in the S_ID of the frame header ofthe command frame that was accepted. Next, the SC2022 instructs theSP2021 to register the Exchange information such as the S_ID, D_ID,OX_ID, of the command frame as well as the frame transfer originatorhost I/F node No. into the ET2026, and transfers this command frame tothe IC2023. The IC2023 complies with instructions of the frame header401 and transfers the command frame (arrow (b) of FIG. 10) to theconnected diskarray subset 10 (Here, the diskarray subset “#0”).

[0064] The diskarray subset “#0” receives the command frame “FCP_CMD”after conversion, in the diskarray I/F controller 1011. The host MPU1010acquires the LUN and CDB stored in the frame payload 402 of the commandframe and recognizes that the LEN length data from the LBA of thespecified logical unit is the read command. The host MPU1010 refers tothe cache management information stored in the cache/shared memory 102and performs cache miss-hit/hit identification If a hit then the data istransferred from the cache 102. It a miss then reading of data from thedisk unit is necessary so that address conversion is implemented basedon the structure of RAID 5 and a cache space is secured. Processinginformation required for read processing from the disk unit 2 isgenerated, and processing information for continued processing in thelower MPU 1030 is stored in the cache/shared memory 102. The lower MPU1030 starts processing when the processing information is stored fin hecache/shared memory 102. The lower MPU 1030 specifies an appropriatedisk I/F controller 1031 and generates a r ad command to the disk unit2, and issued a command to the disk I/F controller 1031. The disk I/Fcontroller 1031 stored the data read from the disk unit 2 in the addressspecified by the cache/shared memory 102 and issues a completion reportto the lower MFU 1030. The lower MPU 1030 stores the processingcompletion report in the cache/shared memory 102 for reporting to thehost MPU1010 that processing was completed correctly. The host MPU1010restarts the processing when the processing completion report is storedin the cache/shared memory 102 and reports that read data setup iscomplete to the diskarray I/F controller 1011. The diskarray I/Fcontroller 1011 issues a “FCP_XFER_RDY” which is a data transfer setupcompletion frame on the fiber channel for the applicable diskarray I/Fnode “#0” of the diskarray switch 20 (arrow (c) of FIG. 10). In thedisks ray I/F node “#0”, when the data transfer setup completion frame“FCP_XFER_RDY” is received, the SC2022 acquires the reply responderExchange ID (RXID) received from the diskarray subset 10, specifies theS_ID, D_ID, OX_ID, instructs the SP2021 and registers the RX_ID in theapplicable Exchange of the ET2026. The SC2022 acquires the host I/F nodeNo. of the transfer responder (transfer originator of the command frame)for the data transfer completion frame. The SC2022 renders the S_ID ofthis frame invalid and transfers it to the SPG2024. The SPG2024generates the S Packet as described previously and transfers the SPacket to the corresponding host I/F node “#2” by way or the crossbarswitch 201.

[0065] When the SPG2024 in the host I/F node “#2” receives the S Packetof the data transfer completion frame, the expansion header of the SPacket is removed, and the “FCP_XFER_RDY” reproduced and delivered tothe SC2022 (step 20011). The SC2022 instructs the SC2021, searches theET2026 and specifies the applicable Exchange (step 20012). Next, theSC2022 investigates whether the frame is “FCP_XER_RDY” (step 20013) andif “FCP_XFER_RDY”, instructs the SP2021 to rewrite he originatorExchange ID (RX_ID) of ET2026 The value added to this frame is used asthe originator Exchange ID (step 20014). The SC2022 then converts theS_ID, D_ID of the frame header 401 to an appropriate value used by theID of the host 30 and the ID of the host I/F node 203 (step 20015) Theframe header 401 is thus converted to a frame corresponding to the host“#2” by means of this processing. The IC2023 issues a “FCP_XFER_RDY”data transfer completion frame for this ost “#2” (arrow (d) of Fig 10)(step 20016).

[0066] The diskarray I/F controller 1011 for the diskarray subset “0”generates a data frame “FCP_DATA” for performing data transfer, andtransfers it to the diskarray switch 20 (arrow (e) of FIG. 10). A limitof a maximum data length of 2 kilobytes for one frame is set to limitthe data transfer length of the frame payload. When this data lengthexceeded, data frames just equal to the required number are generatedand issued. An identical SEQID is assigned to all the data frames Exceptfor the case where a plurality of frames are generated for the sameSEQ_ID (in other words SEQCNT changes), data frame issue is the same asfor the data transfer setup completion frame. The diskarray switch 20implements conversion of the frame header 401 for the data frame“FCP_DATA” just the same as for the data transfer setup completionframe. However, an RX_ID has previously been established whentransferring the data frame so that the processing of step 20014 for thedata transfer setup completion frame is skipped. After conversion of theframe header 401, he diskarray switch 20 transfer the data frame to thehost “#2” (arrow (f) of FIG. 10).

[0067] Next, the diskarray subset “#0” of the diskarray I/F controller1011 generates a status frame “FCP_RSP” perform the end status transferand issued this frame to the diskarrayswitch20 (arrow (g) of FIG. 10).In the diskarray switch 20, the expansion header is removed from the SPacket by the SPG2024 just the same as the processing for the datatransfer setup completion frame, the “FCP_RSP” frame is recreated (step20021) and the ET2026 is searched by the SP2021 and the Exchangeinformation acquired (step 20022). The SC2022 converts the frame basedon this information (step 20023). The converted frame is transferred tothe port “#2” by the IC2023 (arrow (h) of FIG. 10) (step 20024).Finally, the SP2021 deletes the exchange information from the ET2026(step 20025).

[0068] The read processing is thus performed from the diskarray. In thewrite processing for the diskarray system 1, only the transfer directionof the data frame is reverse and the processing is otherwise the same asthe read processing.

[0069] The diskarray switch 20 as shown in FIG. 3 is provided with anintercluster I/F 2040 in the crossbar switch 201. In the systemstructure shown in FIG. 1, an intercluster I/F 2040 is not used. In thediskarray switch of this embodiment, other diskarray switches can bemutually connected as shown in FIG. 14, utilizing the intercluster I/F2040. In this embodiment, only a total of eight diskarray subsets 10 andhost 30 can be connected in a single diskarray switch 20 however aplurality of diskarray switches 20 can be mutually connected byutilizing the intercluster I/F 2040 and an increased number ofdiskarrays and hosts 10 can be connected. In the system shown in FIG. 14for example, four diskarray switches 20 are used to connect up to atotal of 32 units of the diskarray subset 10 and the hosts 30, and datacan be mutually transferred between these subsets and hosts. In thisway, the number of diskarray subsets and the number of hosts that can beconnected are increased according to the need for performance and diskcapacity in this embodiment. Also, the capacity, performance andexpandability of connection units can be drastically improved sinceconnections can be made between the host—diskarray system by utilizingthe necessary amount of host I/F transfer bandwidth.

[0070] In the embodiment as described above, even if the performance ofone diskarray subset unit is limited by the internal bus and theinternal MPU, mutual connections can be made between the host and thediskarray subset by utilizing a plurality of the diskarray subsets, bymeans of the diskarray switch. In this way, high performance car beachieved as a total diskarray system. Even if the performance of adiskarray subset is relatively low, high performance can be attained byutilizing a plurality of diskarray subsets. Accordingly, low costdiskarray subsets can be connected in just the required number to matchthe scale of the computer system, and a diskarray system can beconstructed at a cost appropriate to the desired scale. Further, whenimprovement in performance of increasing the disk capacity is required,then the diskarray subsets can be added in just the required amount.Still further, since a plurality of diskarray switches can be utilizedto connect an optional number of hosts and diskarray subsets, a draicimprovement can be made in the capacity, the performance or the numberof units for connection, and a system with high expandability obtained.Even still further, reduced elements of a diskarray system itself of theconventional art can be utilized in this embodiment so that large salesoftware that was previously developed can be utilized without changes,thus reducing development costs and achieving a short developmentperiod.

[0071] (Second Embodiment)

[0072]FIG. 15 is a block diagram of the computer system of the secondembodiment of this invention. In this embodiment, the structure differsfrom the first embodiment in that, in the host I/F node of the diskarrayswitch, only the frame header 401 is converted, the frame payload 40 isnot operated and also in that the diskarray switch, the host I/F and thediskarray I/F are not duplexed (duplicated). The elements of thestructure are therefore not greatly different from the first embodimentand a detailed description of those similar sections is omitted.

[0073] In FIG. 15, the diskarray subsets 10 are comprised of a pluralityof logical units (LU) 110. Each LU110 is configured as an independentLU. The serial numbers assigned to the LUN in the LU110 inside thediskarray subsets 10 generally start from 0 (zero). Therefore, whenshowing to a host 30, consecutive LUN for all LU110 in the diskarraysystem 1, then converting the LUN field for the frame payload 402 isnecessary, the same as in the first embodiment. In this embodiment, theLUN of the diskarray subsets 10 are shown unchanged to the host 30, soconversion of the frame payload 402 is not necessary and the control ofthe diskarray switches is extremely simple.

[0074] In the diskarray switches of this embodiment, it is assumed thata specified diskarray subset 10 can be accessed for each host I/F node203. When one host I/F 31 is used in this case, only the LU110 in onediskarray subset 10 an be accessed. When accessing LU110 in a pluralityof diskarray subsets 10 from one host unit is needed, then that host isconnected to a plurality of host I/F nodes 203. Further, when settingaccess of LUIIO of one diskarray subset 10 from a plurality of host 30,then loop topology or fabric topology can be utilized in the same hostI/P node 203 to connect to the plurality of hosts 30. When configured inthis way, during access of one LU110 from one host 10, a diskarraysubset 10 can be set for each D_ID of the host I/P node 203 so that theLUN of each LU can be shown as is, to the host 30.

[0075] Since in this embodiment, the LU of each LU110 inside thediskarray subsets 10 can be shown unchanged to the host 30 for the aboverelated reasons, then conversion of the LUN is no longer required in thediskarray switch 20. Accordingly, when the diskarray switch 20 receivesa frame from the host 30, only the frame header 30 is converted the sameas in the first embodiment, and the frame payload 402 is transferredwithout conversion to the diskarray subset 10. In the operation of eachsection of this embodiment, excluding the fact that the conversion ofthe frame pay load 402 is not performed, the embodiment is the same asthe first embodiment so that a detailed explanation of the identicalsections is omitted The diskarray switch 2 can be easily developed inthis embodiment.

[0076] (Third Embodiment)

[0077] In the second embodiment, in the host I/F node of the diskarrayswitch, only the frame header 401 is converted, however in the thirdembodiment described hereafter, frame conversion, including the frameheader is not performed. The computer system of this embodiment isconfigured the same as the computer system in the first embodiment asshown in FIG. 1.

[0078] In the first and second embodiments, the internal structure ofthe diskarray system 1 such as the number of diskarray subsets 10 andthe configuration of the LU110 e concealed from the host 30. The host 30therefore sees the entire diskarray system 1 as one storage device. Incontrast, in this embodiment, the diskarray subset 10 is revealed to thehost 30, and the host 30 directly uses the D_ID of the frame header asthe port ID for the diskarray subset. By this arrangement the diskarrayswitch can control frame transfer just by complying with the frameheader information, and the fabric of the fiber channel in theconventional art can be used instead of the diskarray switch 20 toachieve an equivalent switch device.

[0079] The diskarray system configuration manager (means) 70communicates with the communication controller 106 of the diskarraysubset 10 as well as the communication means 204 of the diskarray switch20 and acquires or sets structural information of the diskarray subsets10 and the diskarray switches 20.

[0080] The diskarray switches 20 have a structure basically the same asthe diskarray switches of the first embodiment as shown in FIG. 3.However, in this embodiment, the frame header information for framesissued from the host 30 is used unchanged to control frame transfer sothat the conversion function of the first and second embodiments, inwhich a frame header is achieved by a DCT2027, SC2022, SPG2024 of thediskarray I/F node 202 and host I/F node 203 of the diskarray switch, isnot necessary. The crossbar switch 201 in the diskarray switch 20,performs transfer of fiber channel frames between the host I/F node 203,and the diskarray I/F node 202, according to the frame headerinformation.

[0081] In this embodiment, to achieve total management of the diskarraysystem structure with the diskarray system configuration manager (means)70, a diskarray management table (hereafter this table is called DCT, isprovided in the diskarray system configuration manager (means) 70. TheDCT comprising the diskarray system configuration manager (means) 70consists of a group of two tables; a Diskarray System ConfigurationTable 20270 and a Diskarray Subpart Configuration Table 202720-202723.The host-LU in this embodiment are all comprise as one LU so that the“LU Type” in the Host-LU Configuration table 20271 are ail “ILU”, andthe “CLU Class” and “CLU Stripe Size” are not significant.

[0082] The administrator operates the management console 5, communicateswith the diskarray system configuration manager (means) 70 and acquiresinformation such as the number of disk units, and disk capacity of thediskarray subset 10, and performs setting of the LU110 of the diskarraysubset 10 and setting of the RAID level. Next, the administratorcommunicates with the diskarray system configuration manager (means) 70from the management console 5, controls the diskarray switch 20 and setsrelated information among the host 30 and the diskarray subsets 10. Thisoperation establishes the structure of the diskarray system 1 and allowsLU1 to be seen as the administrator wishes, from the host 30. Thediskarray system configuration manager (means) 70 saves the abovesetting information, verifies the configuration according operation bythe administrator and performs changes in the structure (configuration).

[0083] In this embodiment, once the diskarray system 1 is configured, aplurality of diskarray systems 1 can be handled the same as onediskarray system and without making the administrator aware of thepresence of the diskarray switch 20. Further in this embodiment, thediskarray subsets 10 and the diskarray switches 20 can be operatedtogether by means of the same operating environment and confirming theirconfiguration (or structure) and making changes in the configuration isalso simple. Still further in this embodiment, when substituting thediskarray system of this embodiment with a diskarray system used in theconventional art, no changes are made in the host 30 settings, and thestructure of she diskarray system 1 can work with the diskarray systemstructure used up until then, and interchangeability can be maintained.

[0084] (Fourth Embodiment)

[0085] A fiber channel was used in the host I/F in the first throughthird embodiments described above. In the embodiment hereafterdescribed, an interface other than the fiber channel might also be used.

[0086]FIG. 17 is a block diagram of the IC (Interface Controller) 2023inside the host ITF node 302, when the host I/F is a parallel SCSI. AnSCSI protocol controller (SPC) 20230 performs the protocol control ofthe parallel SCSI. A fiber channel protocol controller (FPC) 20233performs control of the fiber channel. A protocol exchanging processor(PEP) 20231 converts the protocol of the serial SCSI of the fiberchannel and the parallel SCSI. A buffer (BUF) 20232 temporarily storesthe data of the protocol being converted.

[0087] The host 30 in this embodiment, issues a SCS: command to thediskarray I/F node 203. In the case of a read command, the SPC20230stores this in the BUF 20232 and reports reception of the command bybreaking into the PEP 20231. The PEP 20231 uses the command stored inthe BUF20232, art converts the command to FPC20233 and sends it to theFPC20233. When the FPC20233 receives this command, in convert thecommand into a frame configuration and delivers it to the SC2022. Atthis time, the Exchange ID, Sequence ID, Source ID and Destination IDare added to PEP 20231 capable of the following processing. Theremaining command processing is performed the same as in the firstembodiment. When the setup of data is complete, the data array subset 10issues a data transfer setup completion frame, and after the datatransfer ends correctly, implements issue of a status frame. In theperiod from the diskarray subset 10 to the IC2023, while the frameheader 401 and the frame payload 402 are being converted as required,the transfer of each frame is performed. The FPC20233 of the IC2023receives the data transfer setup completion frame, then receives thedata and stores it in the BUF 20232 and if the transfer has endedcorrectly, receives the status report, and breaks into the PTP20231 toreport that transfer of data is complete. When the PTP20231 receives thebreak-in (interruption), the SPC20230 starts up and instructs the startof data transfer to the host 30. The SPC20230 transmits the data to thehost 30, and after confirming normal completion, interrupts the PTP20231to report the data transfer ended correctly.

[0088] A parallel SCSI was used as an example here of a host I/F otherthan a fiber channel however other interfaces can be implemented such asfor ESCON in the same manner as a host I/F to the main frame. Host I/Fnodes corresponding for instance, to the fiber channel, parallel SCSIand ESCON can be provided as the host T/F node 203 of the diskarrayswitch 20 so that all kinds of so-called open systems such a personalcomputers and work stations can be connected with the main frame to onediskarray system 1. In this embodiment, a fiber channel was utilized asthe diskarray I/F in the first through the third embodiments however thedesired optional I/F can also be used as the diskarray I/F.

[0089] (Fifth Embodiment)

[0090] A method for configuration management of the diskarray system 1is described using the fifth embodiment. FIG. 18 is a system diagram ofthis embodiment. A total of four host 30 units are provided in thisembodiment The I/F 30 connecting between the host “#0”, “#1” and thediskarray system 1 is a fiber channel, the host “#2” and the diskarraysystem 1 are connected by a parallel SCSI (Ultra SCSI) The host “#3” andthe diskarray system 1 are connected bad a parallel SCSI (Ultra2SCSI).The connection to the diskarray switch 20 of the parallel SCSI isperformed in the same way as the fourth embodiment. The diskarray system1 has four diskarray subsets 30. The diskarray subset “#0” has fourindependent LU. The diskarray subset “#1” has two independent LU. Thediskarray subset “#2” and the diskarray subset “#3” are comprised of onecombined LU (CLU). In this embodiment, just the same as the firstembodiment, the diskarray subset 10 is concealed from the host 30, andthe frame of the fiber channel is converted The LUN assigned to each LU,in order from the diskarray subset “#0” are seven, LUN=0, 1, 2, . . . to6.

[0091]FIG. 18 is a screen view showing on the management console screen5. This figure shows the logical connection structure corresponding tothe logical units (LU) and the host T/F 31. The logical connectionconfiguration screen 50 shows the information 3100 relating to each hostI/F 31, the information 11000 relating to each LU110, and the relationof the diskarray subset 10 and the LU110. Information relating to thehost I/F 31 includes the I/F type, the I/F speed and status, etc.Information relating to the LU110 such as the storage subset No, LUN,capacity, RAID level, status, and information are displayed. Theadministrator refers to this information and can easily manage theconfiguration of the diskarray system 1. The lines drawn between thehost I/F and the LU on the logical connection configuration screen 50shows the LU110 accessible by way of each of the host I/F31. Those LU110to which a line is not drawn from the host I/F cannot. be accessed fromthe host 30 connected to that host I/F. The data configuration that ishandled differs according to the host 30, and also differs according tothe user so that appropriate restrictions on access must be provided inorder to maintain security. The administrators setting the systemthereupon utilize this screen, to implement restrictions on access bygranting or denying access between the host I/F and each LU110, on thefigure, the LU “#0” can be accessed from the host I/F “#0” and “#1”however, the LU “#0” cannot be accessed from the host I/F “#2” and “#3”.The LU “#4”, can only be accessed from the host I/F “#2”. In order toimplement these kind of access restrictions, the access restrictioninformation is sent from the diskarray system configuration manager(means) 70 to the diskarray switch 20. The access restrictioninformation sent to the diskarray switch 20 is distributed to each hostI/F node 203 and registered in the DCT2027 of each host I/F node 203.When an LU search check command has been issued for an LU with accessrestrictions, the host I/F node 203 performs a search of the DCT2027 andif a response is not obtained to the search command or if an error isreturned, then that LU is no longer recognized (authorized) from thehost. The Test Unit Ready command or the Inquiry command are typicallyused when in the case of SCSI protocol as search command for thepresence of an LU. Since read/write cannot be implemented without thissearch command, restrictions on access are easy to apply. In thisembodiment, access restrictions are applied to each host I/F 31 howeverby extending this the implementing of access restrictions on each host30 is easily accomplished Further, the host I/F31, host 30, or anaddress space can be specified, and access restrictions can be appliedaccording to the type of command so that read only, write only, read andwrite permit, and read/write prohibit are enforced. In this case, thehost I/F No, the host ID, the address space or the restriction commandare specified as the access restriction information and the restrictionset in the disk access switch 20.

[0092] Next, the addition of another diskarray subset 10 is described.When adding a new diskarray subset 10, the administrator connects thediskarray subset 10 to be added, to an empty I/F node 202 of thediskarray switch 20. The administrator next operates the managementconsole 5 and presses the “Show Latest Status” button 5001 displayed onthe logical connection configuration screen 50. A picture showing thediskarray subsets not yet set appears on the screen (not shown indrawing) in response to pressing the button 5001. When the picture forthis diskarray subset is selected, the setup screen for the diskarraysubsets then appears. The on this setup screen, the administratorexecutes the various settings for the newly added diskarray subset.Items set on this screen include the RAID level and the LUconfiguration. Next, on switching to the logical connectionconfiguration screen of FIG. 19, the new diskarray subset and the LUappear. From here on, the settings for restricting access for the hostI/F31 are made, and the “Setup Execution” button 5002 is pressed, accessrestriction information, as well as diskarray subsets, and LUinformation for the diskarray switch 20 are transferred and the settingsenabled The procedure when adding a LU110 to the diskarray subset 10 isperformed the same as in the above related procedure. The deletion ofthe diskarray subset, and the LU are also performed with approximatelythe same procedure. One point of difference is that the administratorselects the sections for deletion on the screen and presses the “Delete”button, and the deletion is implemented after making an appropriatecheck. Thus by utilizing the management console 5, the administrator cancollectively manage the entire diskarray system.

[0093] (Sixth Embodiment)

[0094] Next the mirroring process by means of the diskarray switch 20 isdescribed utilizing the sixth embodiment The mirroring described here,is a method to support duplexed (duplicated) writing by means of twoindependent LU of two diskarray subsets, and duplicating including up tothe controller of the diskarray subset. The reliability therefore isdifferent from the method duplexing only the disks.

[0095] The system configuration, (structure) of this embodiment is thesame as shown in FIG. 1. In the configuration of FIG. 1, the diskarraysubsets “#0” and “#1” are provided with completely the same LUconfiguration. These two diskarray subsets are seen from the host 30 asone diskarray. For reasons of convenience, the pair No. of the diskarraysubset that was mirrored is called “#01”. Also, a mirroring pair isformed by the LU “#1” and the LU “#0” of the diskarray subset, and thisLU pair is conveniently named, LU “#01”. Information for managing theLU#01 is set as “Mirrored” in the CLU class on the Host-LU ConfigurationTable 20271 of the DCT2027, and information relating to LU#0 and LU#1 isset as the LU Info. The configuration of the other sections is the sameas in the first embodiment.

[0096] The operation of each section of this embodiment is largely thesame as the first embodiment. Hereafter, the points differing from thefirst embodiment are explained mainly with the operation of the host I/Fnode of the diskarray switch 20. FIG. 19 is a model diagram showing thesequence of frames being transferred in the writ. operation of thisembodiment. FIGS. 20A through 20D are flowcharts showing the processingin the host I/F node 203 during the write operation.

[0097] In the write operation, the write command frame (FCP_CMD) issuedby the host 30 is received by the IC2023 (arrow (a) of FIG. 19) (step21001) The write command frame received by the IC2023 is processed thesame as in steps 20002-20005 in the write operation described for thefirst embodiment (step 21002-21005). The SC2022 searches the DCT2027using the SP2021 and verifies that there is a write access request tothe LU “#01” of the mirrored diskarray subset “#01” (step 21006). TheSC2022 makes duplicates of the command frame that was received in FB2025(step 21007). The SC2022 converts the command frame based on thestructural information set in the DCT2027, and makes separate commandframes for both the LU “#1” and the LU “#0” (step 21008). The LU “#0” ishere called the master LU, and the LU “#1” the slave LU. The commandframes are also called respectively the master command frame and theslave command frame. Both of these separate frames are stored in theexchange information in ET2026, and a command frame issued for thediskarray subset “#0” and the diskarray subset “#1” (arrows (b0)(b1) ofFIG. 19) (step 21009).

[0098] The diskarray subsets “#0” and “#1” receive the command framesand the respective, independent, data transfer setup completion frames“FCP_XFER_RDY” are distributed to the diskarray switch 20″ (arrows (c0)(c1) of FIG. 19). In the diskarray switch 20, the data transfer setupcompletion frames transferred by the same processing as in seeps20011-20013 of thread operation in the first embodiment, are processedin the host I/F node 203 (step 21011-21013). At the stage that the datatransfer setup completion frames from each diskarray subsets arearranged (step 21014), the SC2022 converts the master data transfersetup completion frames (step 21015), and after frame conversion by theIC2023 sends the frame to the host 30 (arrow (d) of FIG. 19) (step21015).

[0099] After receiving the data transfer setup completion frame, thehost 30 sends the data frame (FCP_DATA) to the diskarray switch 20(arrow (e) of FIG. 19). When the data frame from the host 30 is receivedby the IC2023 (step 21031), the read command frame and the write commandframe are both stored in the FB2025, and a CRC check and frame headeranalysis are performed (steps 21032, 21033). The ET2026 is searched bythe SP2021 based on the frame header analysis results, and the Exchangeinformation is acquired (step 21034). The SP2022 makes duplicates thesame as during the write command frame (step 21035). One copy is sent tothe LU “#0” of the diskarray subset “#0” and the other is sent to the LU“#1” of the diskarray subset “#1” (arrow (f0) (f1) of FIG. 19) (step21037).

[0100] The diskarray subsets “#0” and “#1” receive each of the dataframes, respectively write these frames in the disk unit 104, and setthe status frame (FCPRSP) to the diskarray switch 20. When the SP2022receives the status frames from the respective diskarray subsets “#0”and “1#”, their respective expansion headers are removed from theirstatus frames, the frame header restored and the exchange informationacquired from the ET2026 (step 21041, 21042). When the status framesfrom both the diskarray subsets “#0” and “#1” are arranged (step 21043),conversion of the master status frame from the LU “#0” is performed(step 21044) after checking that the status has completed correctly, andthe slave status frame is deleted (step 21045). Then, the IC2023 sends acommand frame to the host to report correct completion (arrow (h) ofFIG. 19) (step 21046). Finally, the SP2021 deletes the exchangeinformation of ET2026 (step 21047).

[0101] The write processing n the mirrored structure is thus completedThe read processing for the mirrored LU “#01” differs only in thedirection of data transfer, and is performed largely the same as theabove described write processing except that the issue of a read commandto two diskarray subsets is not necessary, and a command frame can beissued just to either diskarray subset. A command frame for instance canbe issued mainly to the master LU however for high speed operation,methods such as alternate issue of command frames for both themaster/slave LU will prove effective in distributing the load.

[0102] In the above related processing, in steps 21014 and step 21043, areply from the two diskarray subsets LU “#0” and “#1” is awaited, bothsynchronized with and he process then proceeds. With this kind ofcontrol, handling of errors is simple since the process proceeds afterverifying the success of the processing for both of the diskarraysubsets. On the other hand this kind of control has the drawbackperformance declines since the overall processing speed depends on whichof the replies is slower. To resolve this problem, in the diskarrayswitch, control such as by proceeding to the next process withoutwaiting for a reply from the diskarray subset or a “Asynchronous type”control that proceeds to the next process at the point where a replyfrom either one of the diskarray subsets is received are possible. Theframe sequence when this asynchronous type control is used is shown bythe dashed arrow lines in FIG. 19. In the frame sequence shown by thedashed arrow lines, the sending of the data transfer setup completeframe to the host performed in step 21016, is implemented after theprocessing in step 21009, without waiting for the data transfer setupcomplete frame from the diskarray subset 10 In this case, the datatransfer setup complete frame sent to the host, is generated by theSC222 of the diskarray switch 20 (dashed arrow line (d′)). The dataframe from the host 30 is transferred to the diskarray switch 20 at thetiming shown by the dashed arrow line (e′) In the diskarray switch 20,this data frame is temporarily stored in the F32025. The SC2022 makes areply after receiving the data transfer setup complete frame from thediskarray subset 10, and transfers the data frame held in the FB2025(dashed arrow lines (f0′), (f1″)) per the data transfer setup completeframe sent from the diskarray subset 10. The completion report to thehost 30 from the diskarray switch 20 is performed (dashed arrow line(h′)) when there is a report (dashed arrow lines (g0′), (g1′)) from bothof the diskarray subsets 10. This kind of processing can shorten theprocessing time by an amount equal to the time Ta shown in FIG. 19.

[0103] The following processing is implemented when an error occursduring frame transfer between the diskarray subset 10 and the diskarrayswitch 20. When the process being implemented is write processing, thena retry process is performed on the LU in which the error occurred. Ifthe retry process is a success, then the process continues unchanged.However, when the retry process fails after a preset number of retries,then the diskarray switch 20 prohibits access to this diskarray set 10(or LU) and information showing this prohibition is registered in theDCT2027. The diskarray switch 20 also reports this information to thediskarray system configuration manager (means) 70 by way of thecommunication controller 204 and the MP200. The diskarray systemconfiguration manager (means) 70 then issues an alarm to the managementconsole 5 in response to this report. The administrator can thusrecognize that trouble has occurred. Afterwards, the diskarray switch 20continues the operation by utilizing a normal diskarray subset. The host30 also continues processing without recognizing that an error hasoccurred.

[0104] This embodiment utilizes a mirror configuration in a two unitdiskarray subsystem to that the disk is made more resistant to problemsthat occur The resistance of the diskarray controller, diskarray I/F,and the diskarray I/F node can also be improved, and the reliability ofthe overall diskarray system can be improved without taking measuressuch as duplexing (duplicating) the internal buses.

[0105] (Seventh Embodiment)

[0106] In the seventh embodiment, a method is described for combiningthree or more diskarray subsets 10 and configuring them into one logicaldiskarray subset group. In this embodiment, data is distributed andstored into a plurality of diskarray subsets 10. Distributing andstoring the data in this way allows distributing the access to thediskarray subsets, to prevent the access being concentrated inparticular diskarray subset so that the throughput of the total group isimproved. A diskarray switch is used in this embodiment to implementthis kind of striping.

[0107] An address map of the disk address system 1 of this embodiment isshown in Fig 21. The address space for the diskarray subsets 10 isstriped at a stripe size S. The address spaces of the disk addresssystem 1 as seen from the host are distributed into the diskarraysubsets “#0”, “1”, “#2” and “#3”. The size of the stripe size S isoptional however should not be reduced very much. If the stripe size Sis too small, the possibility of the occurrence of the stripe crossover,which is a phenomenon that the target data attaches to a plurality ofstripes across diskarray subsets, will be risen and overhead may occurin the process. When the stripe size S is set large, then theprobability that stripe crossover will occurs diminishes, so a largestripe size S is preferable in terms of improved performance The anumber of LU that can be set is optional.

[0108] Hereafter, the operation of the host I/F node 203 in thisembodiment is described while referring to the operation flowchart shownin FIG. 22 and points differing from the first embodiment are described.In this embodiment, as information relating to the striped Host-LU,“Striped” is set in the CLU Class and “S” is set in the CLU Stripe Size,in the Host-LU Configuration Table 20271 of the DCT2027.

[0109] When a command frame is issued from the host 30, the diskarrayswitch 20 receives this command frame with the IC2023 of the host I/Fnode 203 (step 22001). The SC2022 accepts this command frame from theIC2023, searches the DCT2027 using the SP2021 and verifies that stripingis necessary (step 22005). Next, SC2022 searches the DCT2027 using theSP2021, finds from the structural information containing the stripe sizeS, the stripe No. for the stripe belonging to the data being accessed,and designates what diskarray subset 10 this stripe is stored in (step22006). Stripe crossover may possible occur at this time however thisprocessing in such a case is related later. When no stripe crossoveroccurs, the SC2022 implements conversion of the command frame (step22007) based on SP2020 calculation results, and stores the exchangeinformation in the ET2026 (step 22008). The subsequent processing is thesame as for the first embodiment.

[0110] When stripe crossover has occurred, the SP2021 generates twocommand frames. These frames are generated for instance, by duplicatingthe command frame issued from the host 30. New settings are made such asfor the frame header and frame payload of the generated command frame.After duplicating the command frame in SC2022, conversion can also beimplemented the same as in the sixth embodiment however in thisembodiment is newly made by SP2022. When the two command frames aremade, the SC2022 sends these frames to the respective diskarray subsets10. Data transfer is then performed the same as in the first embodiment.The point in this embodiment differing from the first embodiment is thatthe data itself must be transferred between one host 30 and twodiskarray subsets 10. In the read process for instance, the data frametransferred from the two diskarray subsets 10, must be transferred toall the hosts 30. The SC2022 at this time, complies with the informationregistered in the ET2026, and adds the appropriate exchange information,in the appropriate order to the data frame transferred from thediskarray subset 10 and sends this to the host 30. In the write process,two data frames are made, the same as for the command frame, andtransferred to the applicable diskarray subset 10. The sequentialcontrol of the data frames at the host or the diskarray subset is calledthe “Out of Order” function. This “Out of Order” function is notrequired if the configuration is compatible with nonsequentialprocessing. Finally, when all data transfer is complete, and thediskarray switch 20 has received the status frames respectively from thetwo diskarray subsets 10, the SP2021 (or the SC2022) make; a statusframe for the host 30, and the IC2023 sends this status frame to thehost 30.

[0111] This embodiment as described above, is capable distributing theaccess (load) into a plurality of diskarray subsets, so that along withimproving the total throughput, the access latency can be reduced

[0112] (Eighth Embodiment)

[0113] Next, the duplicating operation between the two, diskarraysystems (or the diskarray subsets) is described using the eighthembodiment. In the system described here, one of two diskarray systemsis installed at a remote location to provide recovery assistance in caseof damage to the other diskarray system due to a natural or man-madecalamity, etc. This kind of countermeasure for dealing with damage fromdisasters is referred to as disaster recovery and the making of copiesperformed with the diskarray system at the remote location is referredto as remote copy.

[0114] In the mirroring as described in the sixth embodiment, the mirrorfunction is achieved with the diskarray subsets 10 installed at largelythe same location geographically so that diskarray I/F21 can use a fiberchannel. However when diskarrays (diskarray subsets) are performingremote copy at remote locations in excess of 10 kilometers, then a fiberchannel cannot be used to transfer a frame unless relay equipment isadded. A mutual distance of some several hundred kilometers is usedduring disaster recovery so that use of fiber channels for connectingbetween diskarrays is impractical. Therefore methods such as satellitecommunications or high speed public telephone lines with ATM(Asynchronous Transfer Mode) are utilized.

[0115]FIG. 23 is a block diagram of the disaster recovery system of theembodiment. In the figure, the reference numeral 81 denotes site A, 82denotes site B. Both sites are installed at geographically remotelocations. Reference numeral 9 denotes a public telephone line, throughwhich the ATM packet passes. The site A81 and the site B82 each have adiskarray system 1. In this case, the site A81 is the normally usedsite, while site B82 is used as the remote disaster recovery site whensite A81 is down due to a disaster. The contents of the diskarray subset“#0” and “#1” of the diskarray system 10 of the site A81 are copied tothe remote copy diskarray subset “#0” and “#1” of the diskarray system10 of site B82. The node for connection to the remote site from amongthe I/F nodes of the diskarray switch 20 is connected to the publictelephone line by utilizing ATM. This node is called the ATM node 205.The ATM node 205 is configured the same as the host I/F node shown inFIG. 5, and the IC2023 performs ATM—fiber channel conversion. Thisconversion is achieved by same method as the SCSI—fiber channelconversion in the fourth embodiment.

[0116] The remote copy process in this embodiment is similar to themirroring process in the sixth embodiment. The points differing from themirroring process of the sixth embodiment are explained next. When thehost 30 issues a write command frame., the diskarray system 10 of siteA81 performs frame duplicating the same as in the sixth embodiment, andtransfers one of the copied (duplexed) frames to its own diskarraysubset 10. The other frame is converted from a fiber channel frame to anATM packet by the ATM node 205 and sent to the site B82 by way of thepublic telephone line 9. At the site B82, the ATM node 205 of thediskarray switch 20 receives this packet. The IC2023 of the ATM node205, restores the fiber channel frame from the ATM packet, and transfersthe fiber channel frame to the SC2022 The SC2022 implements frameconversion the same as when the write command was received from the host30 and transfers the frame to the remote copy diskarray subset Fromhereon, foer channel—ATM conversion is performed for all the datatransfer setup completion frames, data frames and status frame, and byimplementing the same frame transfer process, remote copy can beachieved. When the read command frame was issued from the host 30, thediskarray switch 20 transfers the command frame only to the diskarraysubset 10 only for its own site and reads this data only from thediskarray subset 10 of its own site. The operation at this time is thesame as in the first embodiment.

[0117] This embodiment is capable of making backups of user data inreal-time and providing recovery assistance when damage has occurred toa diskarray system site due to a disaster, etc.

[0118] (Ninth Embodiment)

[0119] The combining of a plurality of LU in one diskarray subset 10 isdescribed next. The disk storage device for a main frame for instance,has a logical volume size set to a maximum value of 2 GB in order tomaintain interchangeability with the previous system. When using thiskind of diskarray system as an open system, the LU receive the samerestrictions on the logical volume size, so that the hosts see thisconfiguration as a large number of small size LU. This kind of methodhas the problem that operating the system is difficult when the systemhas developed to a high capacity level. To deal with this problem, amethod was contrived for combining these logical volume (in other wordsLU) units into one large combine LU (CLU) structure by means of thediskarray switch 20. The forming of a combined LU (CLU) is acheived inthis embodiment by the diskarray swiich 20. The combining of LU in thisembodiment is the same as the forming of combined LU by means of aplurality of diskarray subsets 10 in the first embodiment. The differingpoint is only that in this embodiment, a plurality of LU are combinedwithin the same diskarray subset 10. The operation as a diskarray systemis completely the same as in the first embodiment.

[0120] By combining a plurality of LU in the same diskarray subset 10 inthis way, to form one large LU, a diskarray system is achieved havingexcellent operability, reduced management cost and in which there is noneed for the host to manage a large number of LU.

[0121] (Tenth Embodiment)

[0122] Next, a method far setting alternative paths by means of thediskarray switch 10 is explained while referring to FIG. 24. Thestructure of each section in the computer system shown in FIG. 24 is thesame as in the first embodiment. Here, it is assumed that the two hosts30 are accessing the diskarray subset 10 by utilizing the differentdiskarray I/F21. The diskarray subsets, the host I/F nodes 203 of thediskarray switch 20 and the diskarray I/F nodes 202 in the figure areshown only in the numbers required for this explanation. The diskarraysubset 10 has the same structure as shown in FIG. 2, with two diskarrayI/F controllers each connected to one diskarray switch 20. Analternative path for the diskarray I/F21 is set in the DCT227 of eachnode of the diskarray switch 20. The alternative path is a substitutepath to provide access in the event trouble occurs on a particular path.

[0123] Here, the alternative path for the diskarray I/F “#0” is set asthe diskarray I/F “#1”, while the alternative path for the diskarray I/F“#1” is set as the diskarray I/F “#0”. Alternative paths are set in thesame way respectively for the host adapter in the diskarray subset 10,the cache memory/shared memory, and the lower adapter

[0124] Next, the setting of the alternative path is described, assumingthat a problem has occurred and the path connecting the diskarray I/F21to the host adapter “#1” of the diskarray subset 1 is broken or unusableas shown in FIG. 24. At this time, the host “#1” utilizing the diskarrayI/F2 where the problem occurred, is unable to access the diskarraysubset 10. The diskarray switch 20 detects, an abnormality in the frametransfer with the diskarray subset 10 and when the path cannot berestored after retry processing is implemented, verifies a problem tohave occurred on this path. When a problem occurs on the path, theSP2021 registers the information that a problem has occurred in thediskarray I/P “#1” in the DCT2027. Hereafter, the SC2022 of the host I/Fnode 203 functions to transfer frames from the host “#1” to thediskarray I/F node 202 connected to the diskarray I/F node “#0”. Thehost adapter 101 of the diskarray subset 10 continues the processing ofthe command from the host “#1”. The diskarray switch 20 reports theoccurrence of a problem to the diskarray system configuration manager(means) 70, and the occurrence of a problem is then reported to theadministrator by means of the diskarray system configuration manager(means) 70

[0125] The embodiment described above, can therefore switch to analternative path when a problem occurs on a path, without this switchbeing recognized by the host and render the setting of substitutes onthe host side unnecessary. Thus the utilization of the system can beimproved

[0126] In this invention as described above, a storage system can beachieved that easily improves the storage device expandability, andreliability according to various requirements and the scale of thecomputer system. The above explanations of the each of the embodimentsall utilized a diskarray system having a disk device. However, this,invention is not limited to use of a disk device as a storage media andis also applicable to optical disk devices, tape devices, DVD devicesand semiconductor storage devices, etc.

What is claimed is:
 1. A storage system comprising: a plurality ofstorage sub-systems each of which includes a storage device having arecording medium f or storing data, and a controller for controllingsaid storage device; a first interface node coupled to a computer usingthe data stored in said plurality of storage sub-systems, said firstinterface node having a configuration table storing structuralinformation of the storage system, and a switching controller, inresponse to frames sent from said computer, analyzing and convertingsaid frames based on the structural information held in saidconfiguration table; a plurality of second interface nodes each of whichis coupled to any one of said storage sub-systems; and a switchingmeans, coupled to said first interface node and to said plurality ofsecond interface nodes, for performing frame transfer between said firstinterface node and said plurality of second interface nodes.
 2. Astorage system according to claim 1, wherein said first interface nodecomprises a packet generator for outputting said frame with adding nodeaddress information of said second interface node thereto, and whereinsaid switching means performs frame transfer between said firstinterface node and said plurality of second interface nodes based onsaid node address information.
 3. A storage system according to claim 1,wherein said frame has a frame header having identifiers for specifyingthe transfer destination and the transfer source and, and a framepayload having the transferred data, and wherein said switchingcontroller converts the identifier for the transfer destination held insaid frame header based on said structural information.
 4. A storagesystem according to claim 3, wherein said frame has said frame payloadcontaining a first logical address information recognized from saidcomputer, and said switching controller converts said first logicaladdress information to a said second logical address information managedwithin the storage sub-system which is the frame transfer destinationbased on said structural information stored in said configuration table5. A storage system according to claim 1, further comprising a managingprocessor connected to said switching means, and wherein said managingprocessor receives structural information defining the configuration ofthe storage system inputted by an operator, and sets structuralinformation in the configuration table of each node in response to inputof the structural information.
 6. A storage system according to claim 5,wherein said structural information contains information limiting accessto said plurality of storage sub-systems from said computer.
 7. Astorage system according to claim 2, wherein said first interface node,in response to a write command frame sent from said computer instructingthe writing of data, generates duplicates respectively of the writecommand frame and the following data frame, and transfers said frames tothe switching means with adding different node addresses to each of theframes so that the write command frame and the following data frame willbe sent to at least two storage sub-systems.
 8. A storage systemaccording to claim 7, wherein said first interface node, in response toa read command frame sent from said computer instructing the reading ofdata, generates duplicates respectively of the read command frame andthe following data frame, and transfers said frames to the switchingmeans with adding different node addresses to each of the frames so thatthe read command frame and the following data frame will be sent to atleast two storage sub-systems.
 9. A storage system according to claim 8,wherein said first interface node, in response to said read commandframe, receives data frames transferred from at least two of saidstorage sub-systems, and selects and transfers one of data frames fromsaid at least two storage sub-systems to said computer.
 10. A storagesystem of claim 7, wherein said first interface node, in response to aread command frame sent from said computer instructing the reading ofdata, transfers said read command frames to said switching means withadding node address information of said second interface node, which iscoupled to a pre-determined storage sub-system from among at least twoof said storage sub-systems, to said read command frame.
 11. A switchingmeans connected between a computer and a plurality of storagesub-systems including a storage device having a recording medium forstoring data and a controller for controlling said storage device, saidswitching means comprising: a first interface node coupled to saidcomputer, and including a configuration table storing structuralinformation for a disk storage system and a switching controller, inresponse to a frame transferred from said computer, analyzing said frameand converting said frame based on structural information held in saidconfiguration table; a plurality of second interface nodes each of whichis coupled to any one of said storage sub-systems; and a switchingdevice, to which said first interface node and said plurality of secondinterface nodes are connected, for performing frame transfer betweensaid first interface node and said plurality of second interface nodes.12. A storage switch according to claim 11, wherein said first interfacenode has a packet generator outputting said frame with adding nodeaddress information of said second interface node, and wherein saidswitching device performs frame transfer between said first interfacenode and said plurality of second interface nodes based on aid nodeaddress information.
 13. A storage switch according to claim 11, whereinsaid frame has a frame header holding identifiers for specifying thetransfer source and transfer destination, and a frame payload holdingthe actual data for transfer, and wherein said switching controllerconverts the identifier for the transfer destination held in said frameheader based on said structural information.
 14. A storage switchaccording to claim 13, wherein said frame contains, in said framepayload, a first logical address information recognized by saidcomputer, and wherein said switching controller converts said firstlogical address information to a second logical address informationmanaged within the storage sub-system which is the destination of theframe, based on said structural information held in said configurationtable.
 15. A storage switch according to claim 11, further comprising amanaging processor coupled to the switching device, and wherein saidmanaging processor receives structural information defining theconfiguration of the storage system inputted by an operator, and setsstructural information in the configuration table of each node inresponse to input of the structural information.
 16. A storage switchaccording to claim 12, wherein said first interface node, in response toa write command frame sent from said computer instructing the writing ofdata, generates duplicates respectively of the write command frame andthe following data frame, and transfers said frames to the switchingdevice with adding different node addresses to each of the frames sothat the write command frame and the following data frame will be sentto at least two storage sub-systems.
 17. A storage switch according toclaim 16, wherein said first interface node, in response to a readcommand frame sent from said computer instructing the reading of data,generates duplicates of said read command frame, and transfers saidframes to the switching device with adding different node addresses toeach of the frames so that the read command frame will be sent to atleast two storage sub-systems.
 18. A storage switch according to claim17, wherein said first interface node, in response to said read commandframe, receives data frames transferred from at least two of saidstorage sub-systems, and selects and transfers one of said data framesreceived from said at least two stooge sub-systems to said computer. 19.A storage switch according to claim 16, wherein said first interfacenode, in response to a read command frame sent from said computerinstructing the reading of data, transfers said read command frames tosaid switching device with adding node address information of a secondinterface node which is coupled to a predetermined storage sub-system insaid at least two storage sub-systems to said read command frame.
 20. Astorage system comprising: plurality of storage sub-systems including astorage device having a recording medium for storing data and, acontroller for controlling said storage device; a first interface nodecoupled to a computer using the data stored in said plurality of storagesub-systems; a plurality of second interface nodes each of which iscoupled to any one of said storage subsystems; a switching means coupledto said first interface node and to said plurality of second interfacenodes for performing frame transfer between said first interface lodeand said plurality of second interface nodes; and a managing processorcoupled to said switching means and having a configuration table forholding structural information, inputted by an operator, defining theconfiguration of the storage system; and wherein said managing processormanages the configuration of the storage system based on said structuralinformation.